home *** CD-ROM | disk | FTP | other *** search
- Subject: Re: Any tips for Building ODF with CW8 CFM68k?
- Sent: 3/23/96 1:27 PM
- Received: 3/25/96 8:25 AM
- From: Jim Lloyd, jim@melongem.com
- Reply-To: ODF-Interest@CILabs.ORG
- To: OpenDoc Development Framework Discussion List, ODF-Interest@CILabs.
-
- At 1:21 AM 3/24/96, Masahiro Abe wrote:
- >Hi all,
- > I've long tried to build ODF libraries and examples with CodeWarrior for
- >my IIci. I haven't succeeded it yet. I would like to see if anyone had done
- >this with latest release of CW8 with latest C/C++ 68k patch, and would like
- >to know how it was done in detail.
- >
- > In my case, all source get compiled fine (with several modifications based
- >on WWW and NewsGroup info), but at link time, linker always complain that
- >it couldn't resolve references to "somGetGlobalEnvironment" or other SOM
- >related name. I've disassembled the caller and found it is really calling
- >"somGetGlobalEnvironment", but "somlib" shared library has entry name of
- >"_%somGetGlobalEnvironment".
- > If I build DrawEditor68k sample part, it correctly references to
- >"_%somGetGlobalEnvironment".
-
- This is a known bug in the way "#pragma import reset" works. Hopefully
- there will be a fix soon. In the meantime, you can workaround the problem
- in the following way. The linker tells you that somGetGlobalEnvironment is
- unresolved in some translation unit, say FWxxxxxx.cpp. Open up that file
- and add a line that looks like this:
-
- #pragma import list somGetGlobalEnvironment
-
- Put the line after all of the #includes and before the first function
- definition. If there is more than one unresolved function in a translation
- unit, you can list them like this:
-
- #pragma import list somGetGlobalEnvironment,somNewInstance
-
- There is another bug that is preventing us from building ODF 1 with
- CodeWarrior CFM68K, but I expect a fix from Metrowerks very soon. Odds are
- very good that we will have support for CW CFM68K in our ODF 1 release (mid
- April). Note that the bug we're seeing shouldn't affect ODF 1.0d11 since
- it relies on statically linking all of ODF into your part. The bug is that
- CW doesn't correctly honor the CFM68K calling conventions for returning a
- 4-byte struct by value as a function result (result should be passed in
- D0).
-
- Jim Lloyd
- ODF Team
-
-
-